﻿using System;
using System.Data;
using System.Configuration;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.IO;
using System.Security.Cryptography;
/// <summary>
/// Summary description for CheckFile
/// </summary>
namespace webapp4U
{
    public class CheckFile
    {  
        public CheckFile()
        {
            //
            // TODO: Add constructor logic here
            //
        }

        public bool FileCompare(string File1, string File2)
        {
            //lấy mã băm file 1
            string HashCode1 = GetHashCode(File1);
            //lấy mã băm file 2
            string HashCode2 = GetHashCode(File2);
            return HashCode1.Equals(HashCode2);
        }

        //hàm lấy mã băm của một file
        private string GetHashCode(string FilePath)
        {
            try
            {
                //tạo luồng để đọc file
                using (FileStream fs = new FileStream(FilePath, FileMode.Open))
                {
                    //tạo đối tượng băm
                    HashAlgorithm Hasher = HashAlgorithm.Create();

                    //lấy mã băm
                    return BitConverter.ToString(Hasher.ComputeHash(fs));
                }
            }
            catch (Exception)
            {
                return string.Empty;
            }
        }

    }
}
